﻿using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Data;

using ECCIT.IO;

namespace ECCIT.Report.Excel
{
    public interface IReportColumnModel
    {
        int? ID { get; set; }

        string ReportGuid { get; set; }

        IReportModel ReportModel { get; set; }

        /// <summary>
        ///     列物理名称
        /// </summary>
        string PhysicalName { get; set; }
        
        /// <summary>
        ///     行索引，非列表循环列通过RowIndex和ColumnIndex找到对用的Cell
        /// </summary>
        int? RowIndex { get; set; }

        /// <summary>
        ///     列索引，非列表循环列通过RowIndex和ColumnIndex找到对用的Cell
        /// </summary>
        int? ColumnIndex { get; set; }
        
        /// <summary>
        ///     指示该列是否是自动编号列，如果是，从1-n自动编号
        /// </summary>
        bool? AutoNumber { get; set; }

        /// <summary>
        ///     合计列显示文字
        /// </summary>
        string SumText { get; set; }

        /// <summary>
        ///     合计列计算公式
        /// </summary>
        string SumStatement { get; set; }

        /// <summary>
        ///     
        /// </summary>
        int? Type { get; set; }

        /// <summary>
        ///     指示该列是否可以作为排序列
        /// </summary>
        bool? Sortable { get; set; }

        /// <summary>
        ///     列显示名称
        /// </summary>
        string DisplayName { get; set; }
    }
}
